home *** CD-ROM | disk | FTP | other *** search
/ Delphi Magazine Collection 2001 / Delphi Magazine Collection 20001 (2001).iso / DISKS / Issue37 / construc / UNIT1.PAS < prev   
Encoding:
Pascal/Delphi Source File  |  1998-08-04  |  1.9 KB  |  70 lines

  1. unit Unit1;
  2. interface
  3. uses
  4.   Windows, Messages, SysUtils, Classes, HTTPApp, Db, DBTables,
  5.   DSProd;
  6.  
  7. type
  8.   TWebModule1 = class(TWebModule)
  9.     Table1: TTable;
  10.     DataSetPageProducer1: TDataSetPageProducer;
  11.     Table1SpeciesNo: TFloatField;
  12.     Table1Category: TStringField;
  13.     Table1Common_Name: TStringField;
  14.     Table1SpeciesName: TStringField;
  15.     Table1Lengthcm: TFloatField;
  16.     Table1Length_In: TFloatField;
  17.     Table1Notes: TMemoField;
  18.     Table1Graphic: TGraphicField;
  19.     procedure WebModule1WebActionItem1Action(Sender: TObject;
  20.       Request: TWebRequest; Response: TWebResponse; var Handled: Boolean);
  21.     procedure DataSetPageProducer1HTMLTag(Sender: TObject; Tag: TTag;
  22.       const TagString: String; TagParams: TStrings;
  23.       var ReplaceText: String);
  24.   private
  25.     { Private declarations }
  26.   public
  27.     { Public declarations }
  28.   end;
  29.  
  30. var
  31.   WebModule1: TWebModule1;
  32.  
  33. implementation
  34. {$R *.DFM}
  35.  
  36. procedure TWebModule1.WebModule1WebActionItem1Action(Sender: TObject;
  37.   Request: TWebRequest; Response: TWebResponse; var Handled: Boolean);
  38. begin
  39.   if IsMultiThread then
  40.     Response.Content := 'This is a multi-threaded ISAPI DLL'
  41.   else
  42.     Response.Content := 'Warning: this ISAPI DLL is not thread-safe...';
  43.   Response.Content :=
  44.     Response.Content + '<HR>' + DataSetPageProducer1.Content
  45. end;
  46.  
  47. procedure TWebModule1.DataSetPageProducer1HTMLTag(Sender: TObject;
  48.   Tag: TTag; const TagString: String; TagParams: TStrings;
  49.   var ReplaceText: String);
  50. var
  51.   Field: TField;
  52. begin
  53.   if TagString = 'Length' then
  54.   begin
  55.     if Assigned(DataSetPageProducer1.DataSet) then
  56.     begin
  57.       Field := DataSetPageProducer1.DataSet.FindField('Length (cm)');
  58.       if Assigned(Field) then
  59.         ReplaceText := Field.DisplayText
  60.     end
  61.   end
  62.   else { TIME }
  63.   begin
  64.     if TagString = 'TIME' then
  65.       ReplaceText := DateTimeToStr(Now)
  66.   end
  67. end;
  68.  
  69. end.
  70.